#!coding=utf-8
from django.db import models
from enterprise_basic_information.models import Enterprise,Application_status
from enterprise_chemicals.models import Product
'''
废水
'''
class Water(models.Model):
    ISTAKE=(
        ('1',u'是'),
        ('0',u'否'),
    )
    water_produce=models.CharField(u'废水产生量',max_length = 150)
    water_let=models.CharField(u'废水排放量',max_length = 150)
    is_takeover=models.CharField(u'是否接管污水处理厂',choices=ISTAKE,max_length = 150)
    water_let_type=models.CharField(u'废水排放去向类型',max_length = 250)
    last_water_name=models.CharField(u'最终受纳水体名称',max_length = 250)
    enterprise=models.ForeignKey(Enterprise)
    application_status=models.ForeignKey(Application_status)
    SUBMIT_STATUS=(
    ('1',u'提交'),
    ('2',u'暂存'),
    )
    submit_type=models.CharField(u'提交类型',choices=SUBMIT_STATUS,max_length = 30)
    def getTotalemission(self):
        return WaterTotalemission.objects.filter(water=self)
'''
批复常规污染物排放总量(废水)
'''
class WaterTotalemission(models.Model):
    TYPE=(
             ('1',u'COD（吨/年）'),
             ('2',u'氨氮（吨/年）'),
             ('3',u'总氮（吨/年）'),
             ('4',u'总磷（吨/年）'),
             ('5',u'挥发酚（吨/年）'),
             ('6',u'石油类（吨/年）'),
    )
    type=models.CharField(u'批复常规污染物排放（接管）总量',choices=TYPE,max_length = 150)
    count=models.CharField(u'数量',max_length=15)
    water=models.ForeignKey(Water)


'''
废气
'''
class Exhaust(models.Model):
    exhaust_let=models.CharField(u'废气排放量',max_length = 150)
    count=models.CharField(u'排气筒数量（个）',max_length = 150)
    enterprise=models.ForeignKey(Enterprise)
    application_status=models.ForeignKey(Application_status)
    SUBMIT_STATUS=(
    ('1',u'提交'),
    ('2',u'暂存'),
    )
    submit_type=models.CharField(u'提交类型',choices=SUBMIT_STATUS,max_length = 30)
    def getTotalemission(self):
        return ExhaustTotalemission.objects.filter(exhaust=self)

'''
批复常规污染物排放总量(废气)
'''
class ExhaustTotalemission(models.Model):
    TYPE=(
             ('1',u'SO2（吨/年）'),
             ('2',u'NOx（吨/年）'),
             ('3',u'粉尘（吨/年）'),
             ('4',u'总烃（吨/年）'),
    )
    type=models.CharField(u'批复常规污染物排放总量',choices=TYPE,max_length = 150)
    count=models.CharField(u'数量',max_length=15)
    exhaust=models.ForeignKey(Exhaust)

'''
固废
'''
class Solid(models.Model):
    common_number=models.CharField(u'一般固体废物产生量（吨/年）',max_length = 150)
    wx_number=models.CharField(u'危险废物产生量（吨/年））',max_length = 150)
    wxfw_name=models.CharField(u'危险废物处置单位名称',max_length = 150)
    wxfw_type=models.CharField(u'危险废物处置方式（可多选）',max_length = 150)
    enterprise=models.ForeignKey(Enterprise)
    application_status=models.ForeignKey(Application_status)
    SUBMIT_STATUS=(
    ('1',u'提交'),
    ('2',u'暂存'),
    )
    submit_type=models.CharField(u'提交类型',choices=SUBMIT_STATUS,max_length = 30)
'''
特征化学污染物
'''
class FeaturesPollu(models.Model):
    TYPE=(
        ('1',u'重点环境管理类特征化学污染物'),
        ('2',u'其它特征化学污染物'),
    )
    HSFF=(
    ('1',u'监测法'),
    ('2',u'物料衡算法'),
    ('3',u'排污系数法'),
    ('4',u'工程估算法'),
    ('5',u'其它'),
    )
    REPORT_BY=(
        ('1',u'重点环境管理危险化学品风评报告'),
        ('2',u'环评报告'),
        ('3',u'其他'),
    )
    cas=models.CharField(u'cas号',max_length = 250)
    name=models.CharField(u'污染物名称',max_length = 250)
    type=models.CharField(u'污染物类型',choices=TYPE,max_length = 20)
    product=models.ForeignKey(Product,null=True)
    rel_condition=models.CharField(u'释放情况',max_length = 220)
    rel_yes=models.CharField(u'释放至废气/有组织废气排放（t/a）',max_length = 220)
    rel_no=models.CharField(u'释放至废气/无组织废气排放（t/a）',max_length = 220)
    rel_water=models.CharField(u'释放至水体（t/a）',max_length = 220)
    rel_tu=models.CharField(u'释放至土壤（t/a）',max_length = 220)
    rel_total=models.CharField(u'释放总量',max_length = 220)
    transform_condition=models.CharField(u'转移情况',max_length = 220)
    transform_water=models.CharField(u'转移到污水处理厂',max_length=220)
    transform_gf=models.CharField(u'转移到固废处置单位',max_length=220)
    transform_total=models.CharField(u'转移总量',max_length=220)
    adjust=models.CharField(u'核算方法',choices=HSFF,max_length=220)
    report_by=models.CharField(u'填报依据',choices=REPORT_BY,max_length=220)
    report_file=models.FileField(u'附件',upload_to= 'static\\upload\\%Y\\%m-%d',null=True,blank=True)
    enterprise=models.ForeignKey(Enterprise)
    application_status=models.ForeignKey(Application_status)
    SUBMIT_STATUS=(
    ('1',u'提交'),
    ('2',u'暂存'),
    )
    submit_type=models.CharField(u'提交类型',choices=SUBMIT_STATUS,max_length = 30)